<?php

namespace App\Providers;

use App\Interfaces\ArticleInterface;
use App\Interfaces\CategoryInterface;
use App\Interfaces\LogInterface;
use App\Interfaces\MenuInterface;
use App\Interfaces\RecordInterface;
use App\Interfaces\RoleInterface;
use App\Interfaces\SettingInterface;
use App\Interfaces\UserInterface;
use App\Services\ArticleService;
use App\Services\CategoryService;
use App\Services\LogService;
use App\Services\MenuService;
use App\Services\RecordService;
use App\Services\RoleService;
use App\Services\SettingService;
use App\Services\UserService;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Register any application services.
     */
    public function register(): void
    {
        $this->app->bind(LogInterface::class,LogService::class);
        $this->app->bind(RoleInterface::class,RoleService::class);
        $this->app->bind(MenuInterface::class,MenuService::class);
        $this->app->bind(UserInterface::class,UserService::class);
        $this->app->bind(CategoryInterface::class,CategoryService::class);
        $this->app->bind(ArticleInterface::class,ArticleService::class);
        $this->app->bind(SettingInterface::class,SettingService::class);
        $this->app->bind(RecordInterface::class,RecordService::class);
    }

    /**
     * Bootstrap any application services.
     */
    public function boot(): void
    {
        //
    }
}
